## 模板文件是有相对固定的框架，如配置文件可以以软件中定义的配置文件为框架进行修改，service文件以规范的框架进行修改。自定义的模板同理。

# 固定项

http.port: 9200
path.logs: /var/log/example


# 可变项-直接使用vars中的变量
# 如 example_vars中的配置项为：
#   example_cluster_name: mycluster
# 最终生成的配置项如下：
# cluster.name: mycluster

cluster.name: {{example_cluster_name}}


# 可变项-使用主机清单中的配置变量
# 如 主机清单中配置如下：
# [elasticsearch_hosts]
#    192.168.1.1 ansible_host=192.168.1.1 example_id=example1
#    192.168.1.2 ansible_host=192.168.1.2 example_id=example2
#    192.168.1.3 ansible_host=192.168.1.3 example_id=example3
# 最终生成的配置项如下：
# 192.168.1.1主机上的配置文件为：node.name: example1
# 192.168.1.2主机上的配置文件为：node.name: example2
# 192.168.1.3主机上的配置文件为：node.name: example3

node.name: {{example_id}} 


# 可变项-根据主机生成配置项
# 如 主机清单中配置如下：
# [elasticsearch_hosts]
#    192.168.1.1 ansible_host=192.168.1.1 example_id=example1
#    192.168.1.2 ansible_host=192.168.1.2 example_id=example2
#    192.168.1.3 ansible_host=192.168.1.3 example_id=example3
# 最终生成的配置项如下：
# discovery.seed_hosts: ["192.168.1.1", "192.168.1.2", "192.168.1.3"]

{% for host in groups.elasticsearch_hosts -%}
    {% set host_ip = hostvars[host].ansible_host -%}
discovery.seed_hosts: ["{{host_ip}}"]
{% endfor -%}


